/*
 * Queue.h
 *
 *  Created on: 2014年6月10日
 *      Author: rock
 */

#ifndef QUEUE_H_
#define QUEUE_H_
#include <queue>

#include <iostream>
#include <queue>


template <typename T>
class Queue
{
public:
	void add(const T&  dat )
	{
		data.push(dat);
	}

	T remove()
	{
		T  ret = data.front();
		data.pop();
		return ret;
	}

	Queue()
	{
		while(!data.empty())
			data.pop();
	}

    bool isEmpty()
    {
        return data.empty();
    }

private:
	std::queue<T> data;
};

#endif /* QUEUE_H_ */
